<?php
	
	//Clase que se encarga de las acciones del login
	class acciones
	{
		//Función que instacia la clase Funciones y retorna el objeto
		function func(){
			/*Agregamos las funciones*/
			include "funciones.php" ;

			//Creo el objeto funciones
			$obj = new funciones;

			//Retorno el objeto
			return $obj;
		}

		//Función que se conecta a MySql Retornado la conexión
		// PARAMETROS: Conexión: Objeto conexión
		function conn($objFunc){
			//Conecto a MySql
			$conexion = $objFunc->conexion();

			//Retorno la conexión
			return $conexion;
		}

		//Función que se desconecta de MySql 
		// PARAMETROS: función: Objeto funcion
		//			   Conexión: Conexión
		function dess($objFunc, $conexion){
			//Cierro la conexión
			$objFunc->cerrarConn($conexion);
		}

		//Función que se encarga de verificar si existe el usuario
		//PARAMETROS: Usuario
		//            Conexión MySql
		//            Clave actual
		function verifUsu($conn, $usuario, $actual){
			
			//Creo el query
			$sql = "SELECT * FROM login WHERE usuario = '" . $usuario . "'";
			
			try{
				//Ejecuto la consulta
				$myResultado = mysql_query($sql, $conn);
				
				//Verifico si se ejecuto la consulta
				if(!$myResultado){
					$mensaje  = 'Consulta no válida: ' . mysql_error() . "\n";
					die($mensaje);
					return 0;
				}

				//Cuento los registros
				$ncount = mysql_num_rows($myResultado);

				//Verifico si esta
				if($ncount ==0){
					die("El usuario ingresado no es un usuario valido");
					return 0;
				}else{
					
					//Obtengo la password
					while($reg = mysql_fetch_object($myResultado)){
						$pass = $reg->pass;
					}

					//Verifico si las password son iguales
					if($pass == $actual){
						return 1;
					}else{
						die("Las password actual es incorrecta ");
						return 0;
					}
				}
	
			}catch (Exception $e) {
				//Informo el error
				die("Error al ejecutar la consulta " . mysql_error() . "\n");
				return 0;
			}

		}

		//Función que se encarga de insertar en la base de datos
		// PARAMETROS: $conn: Conexión a MySql
		//             $objFunc: Objeto funciones
		//			   $usuario: usuario
		//             $nueva1/2: Claves nueves
		function insertar($conn, $objFunc, $usuario, $nueva1, $nueva2){

			//Creo la consulta para obtener el id
			$sql = "SELECT * FROM login WHERE usuario = '" . $usuario . "'"; 

			//Ejecuto la consulta
			$result = mysql_query($sql, $conn);

			//Verifico si hay error
			if(!$result){
				$mensaje  = 'Consulta no valida: ' . mysql_error() . "\n";
				die($mensaje);
				return 0;
			}

			//Obtengo el id
			while ($row=mysql_fetch_object($result)){
				$id = $row->id;
			}

			//Encripto la password
			$pass = $objFunc->encriptar($nueva1);

 			//Modifico la contraseña
 			$sql = "UPDATE login SET id = '" . $id . "', usuario = '" . $usuario . "', pass = '" . $pass . "', isadmin = 0 WHERE id = '" . $id . "'";

 			//Ejecuto la consulta
 			$result = mysql_query($sql, $conn);

 			 //Verifico si se realizo la consulta bien
			if(!$result){
				$mensaje  = 'Consulta no válida: ' . mysql_error() . "\n";
				die($mensaje);
				return 0;
			}
			else{
				return 1;
			}

		}
		
	}
/**********************************************************************/
	//Inicializo la variable
	$valor = 0;
	
	//Instancio la clase
	$obj = new acciones();

	//Leo los valores
	$usuario = $_POST['usuario'];
	$actual = $_POST['actual'];
	$nueva1 = $_POST['nueva1'];
	$nueva2 = $_POST['nueva2'];

	//Creo el objeto funciones
	$objFunc = $obj->func();

	//Conecto a MySql
	$objConn = $obj->conn($objFunc);

	//Quito caracteres Especiales
	$usuario = $objFunc->sacarAcentos($usuario);

	//Encripto la clave actuañ
	$actual = $objFunc->encriptar($actual);

	//Verifico si es un concursante valido
	$flag = $obj->verifUsu($objConn, $usuario, $actual);

	//Verifico si encontro registros
	if ($flag == 1){		
		//Verifico si las claves son iguales
		if($nueva1 == $nueva2){
			/*Inserto los datos*/
			$valor = $obj->insertar($objConn, $objFunc, $usuario, $nueva1, $nueva2);

			//Cierro la conexión
			$obj->dess($objFunc, $objConn);

			header("location: ../php/FormClaves.php?inserto=" .$valor);
		}
		else{
			die("Las claves no coinciden");
		}
	}
?>